home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / src / lib / c / net / getnetbyname.c < prev    next >
C/C++ Source or Header  |  1988-07-01  |  1KB  |  41 lines

  1. /*
  2.  * Copyright (c) 1983 Regents of the University of California.
  3.  * All rights reserved.
  4.  *
  5.  * Redistribution and use in source and binary forms are permitted
  6.  * provided that this notice is preserved and that due credit is given
  7.  * to the University of California at Berkeley. The name of the University
  8.  * may not be used to endorse or promote products derived from this
  9.  * software without specific prior written permission. This software
  10.  * is provided ``as is'' without express or implied warranty.
  11.  */
  12.  
  13. #if defined(LIBC_SCCS) && !defined(lint)
  14. static char sccsid[] = "@(#)getnetbyname.c    5.4 (Berkeley) 3/7/88";
  15. #endif /* LIBC_SCCS and not lint */
  16.  
  17. #include <netdb.h>
  18.  
  19. extern int _net_stayopen;
  20.  
  21. struct netent *
  22. getnetbyname(name)
  23.     register char *name;
  24. {
  25.     register struct netent *p;
  26.     register char **cp;
  27.  
  28.     setnetent(_net_stayopen);
  29.     while (p = getnetent()) {
  30.         if (strcmp(p->n_name, name) == 0)
  31.             break;
  32.         for (cp = p->n_aliases; *cp != 0; cp++)
  33.             if (strcmp(*cp, name) == 0)
  34.                 goto found;
  35.     }
  36. found:
  37.     if (!_net_stayopen)
  38.         endnetent();
  39.     return (p);
  40. }
  41.